AUTOMATIC1111 WebUI
#Stable_Diffusion
メモ
[monochrome:watercolor:0.7]
プロンプトエディティング(Prompt editing
特定のステップ数でプロンプトを切り替える
[cow|horse] in a field
1step毎にプロンプトが入れ替わる
()で語を1.1倍強調できる
(())で1.21倍
[]で語を0.9倍
(word :1.4)で直接指定できる
[word :0.6]はできない
BREAK構文
75トークン毎に分割されてモデルに入力されるがBREAKキーワードを使うと強制的に呪文を分割してくれる
呪文の先頭の方が強く作用するためBREAKで意図的に区切って任意のキーワードから始めることでより制御しやすくなる
1girl, bangs blonde hair, large breasts BREAK cinematic lighting, 3d
https://twitter.com/ai_tensa/status/1624752588196552704
AND構文
() AND ()
要素が混ざりにくくできる
環境構築
cudaの環境構築
NVIDIAドライバを更新せずに新しいCUDAを使う(データセンタ向けGPU限定)
PCでStable Diffusion 2.0を動かす - Qiita
Stable Diffusion 2.1をAUTOMATIC1111版WebUIなどで使う方法|IT navi
GCEで構築
GPU対応イメージ使用してGCE立ち上げる
c2-deeplearning-pytorch-1-13-cu113-v20230126-debian-10
nvidia driver/cuda driver/docker諸々入ってる
/icons/point.iconcuda preinstalledなdeeplearningイメージを使わないとnvidia-smiコマンド撃っても反応しない
ami
c0-deeplearning-common-cu113-v20230615-debian-11-py310 これはnvidia driverの互換性の問題で動かなかった
うまく行ったリスト
c0-deeplearning-common-cu110-v20230615-debian-10
c0-deeplearning-common-cu113-v20230822-debian-10
Webuiのdockerイメージ
https://github.com/AbdBarho/stable-diffusion-webui-docker
スクリプトをコピーして実行(chmod +x setup.sh)
code:setup.sh
#!/bin/sh
set -x
# sudo /opt/deeplearning/install-driver.sh
sudo apt update
sudo apt upgrade -y
# sd docker環境準備
git clone https://github.com/AbdBarho/stable-diffusion-webui-docker
cd stable-diffusion-webui-docker
docker compose --profile download up --build
# docker compose --profile auto up --build
docker compose build auto
docker compose build comfy
chown -R scala1117:scala1117 /home/scala1117/stable-diffusion-webui-docker
$ nohup ./setup.sh > out.log 2>&1 &
シェル実行
$ tail -f out.log
gcsfuseを設定してモデルを配置する
以下を/etc/fstabに設定して再起動
これは使わない
stable-diffusion-hiroki1117 /home/scala1117/stable-diffusion-webui-docker/data/models/Stable-diffusion gcsfuse rw,_netdev,allow_other,uid=1004,gid=1005
こっちを使う(一旦home直下にモデルを配置する)
stable-diffusion-hiroki1117 /home/scala1117/stable-diffusion-hiroki1117 gcsfuse rw,_netdev,allow_other,uid=1004,gid=1005
モデルとvaeをコピー
vae
$ cp /home/scala1117/stable-diffusion-hiroki1117/model/vae/* /home/scala1117/stable-diffusion-webui-docker/data/models/VAE/
model
code:shell
# 7th
sudo cp /home/scala1117/stable-diffusion-hiroki1117/model/7thlayer/7th_anime_v3_A.ckpt /home/scala1117/stable-diffusion-webui-docker/data/models/Stable-diffusion/
sudo cp /home/scala1117/stable-diffusion-hiroki1117/model/7thlayer/7th_anime_v3_B.ckpt /home/scala1117/stable-diffusion-webui-docker/data/models/Stable-diffusion/
sudo cp /home/scala1117/stable-diffusion-hiroki1117/model/7thlayer/7th_anime_v3_C.ckpt /home/scala1117/stable-diffusion-webui-docker/data/models/Stable-diffusion/
#core
sudo cp /home/scala1117/stable-diffusion-hiroki1117/model/coremix/CoreMixPure-V1-fp16.safetensors /home/scala1117/stable-diffusion-webui-docker/data/models/Stable-diffusion/
# counterfeit
sudo cp /home/scala1117/stable-diffusion-hiroki1117/model/counterfeit/Counterfeit-V3.0_fp16.safetensors /home/scala1117/stable-diffusion-webui-docker/data/models/Stable-diffusion/
# sdxl
cp /home/scala1117/stable-diffusion-hiroki1117/model/sdxl/sd_xl_base_1.0.safetensors /home/scala1117/stable-diffusion-webui-docker/data/models/Stable-diffusion/
cp /home/scala1117/stable-diffusion-hiroki1117/model/sdxl/sd_xl_refiner_1.0.safetensors /home/scala1117/stable-diffusion-webui-docker/data/models/Stable-diffusion/
# animagine-xl
cp /home/scala1117/stable-diffusion-hiroki1117/model/animagine-xl/animagine-xl.safetensors /home/scala1117/stable-diffusion-webui-docker/data/models/Stable-diffusion/
生成結果をGCSに保存する(gcsfuse)
以下を/etc/fstabに設定して再起動
sd-output1117 /home/scala1117/stable-diffusion-webui-docker/output gcsfuse rw,_netdev,allow_other,uid=1004,gid=1005
stable-diffusion-webui-docker直下にdocker-compose.override.yamlを作成する
docker composeでマルチコマンドでコンテナ起動したい
code:docker-compose.override.yaml
services:
auto:
environment:
- CLI_ARGS=--allow-code --medvram --xformers --no-half-vae
command: bash -c "python -u webui.py --listen --port 7860 --allow-code --medvram --xformers --no-half-vae"
↓の基本設定やる
拡張インストール
https://github.com/AlUlkesh/stable-diffusion-webui-images-browser
https://github.com/DominikDoom/a1111-sd-webui-tagcomplete
サービスに登録(Systemdに自作サービスを登録する)
$ sudo touch /etc/systemd/system/sdui.service
$ sudo vim /etc/systemd/system/sdui.service
code:systemd
Unit
Description = automatic webui
Service
ExecStart = docker compose --profile auto up
WorkingDirectory = /home/scala1117/stable-diffusion-webui-docker
Restart = no
Type = simple
User = scala1117
Install
WantedBy = multi-user.target
$ sudo systemctl enable sdui
ComfyUIのセットアップはあっちのページ参照
その他メモ
docker compose up auto
基本設定
VAEを簡単に切り替えられるようにする(クイック設定)
https://gyazo.com/c7ca1986c414186e3cab660036ddb258
settings>Defaultsからui-config.jsonの設定を上書きしてデフォルトの設定値を調整できる
https://gyazo.com/86c14a5f179c310e6e3e3377ce54045d
拡張
生成画像を参照する拡張
https://github.com/AlUlkesh/stable-diffusion-webui-images-browser
https://github.com/yfszzx/stable-diffusion-webui-images-browser
hiroki.icon以前はデフォルトでhistoryタブがあったけど、メンテが大変だから機能削除されたらしい
タグ入力補完
https://github.com/DominikDoom/a1111-sd-webui-tagcomplete
複数promptから1つを選択するpromptを作成できる
https://github.com/adieyal/sd-dynamic-prompts
連続生成で色んなタイプのイラストを生成できる
1girl,{large breasts|medium breasts|small breasts},{long hair|medium hair|short hair},school uniform,
元画像から骨格を抽出して同じ構図でt2i
aiイラストは構図を制御するのがかなり無理ゲーだったのでそれを解決する神機能
https://github.com/Mikubill/sd-webui-controlnet
ControlNetのモデル
軽いやつ
https://huggingface.co/webui/ControlNet-modules-safetensors/tree/main
WebUIのSD-WebUI-ControlNetについて
ControlNetでポーズや構図を指定してAIイラストを生成する方法
プロンプトのキーワードを簡単に入力
https://github.com/blue-pen5805/sdweb-easy-prompt-selector
インメモリでモデルマージ
https://github.com/hako-mikan/sd-webui-supermerger
キャラクター二人を描ける
画像を分割してそれぞれにプロンプトを適用させることができる
イラストの場所レベルでコントロールすることができる
hiroki.iconAutomatic Webui自体のコールバック関数を書き換えてるから俺の使ってるdockerだと適用できない
https://github.com/opparco/stable-diffusion-webui-two-shot
2/28 Latent Couple Extentionの本当の使い方
プロンプトの影響をヒートマップで確認する
stable-diffusion-webui-daam
【Web UI】AIイラストのプロンプトの影響範囲を見る方法【AUTOMATIC1111】
sd-webui-depth-lib
手の深度マップ(Depth)をリサイズ・配置し、手の位置調整や修正を簡単に出来ます
regional-prompter
https://github.com/hako-mikan/sd-webui-regional-prompter
stable-diffusion-webui-rembg
https://github.com/AUTOMATIC1111/stable-diffusion-webui-rembg
背景除去
メモリクリアのお守り
https://github.com/Haoming02/sd-webui-memory-release
EasyNegative
https://huggingface.co/datasets/gsdf/EasyNegative
Hires fix
Hires.fixのすすめ
参照
https://github.com/AUTOMATIC1111/stable-diffusion-webui
https://dskjal.com/others/automatic1111.html
https://economylife.net/stable-diffusion-v2-0-update-ckpt-download/
NovelAI5chWiki:ローカル高速化メモ